home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Garbo
/
Garbo.cdr
/
mac
/
science
/
kaos.sit
/
Some notes on Kaos
< prev
next >
Wrap
Text File
|
1990-11-01
|
8KB
|
147 lines
SOME NOTES ON KAOS
Kaos is a program creating fractal images. Yes, another one! Kaos is different,
however. It is NOT yet another Mandelbrot set program (with all respect to Mr.
Mandelbrot). Also, it is not another 'zillion options + fully configurable +
every type of fractal known included and then some' type of program. No, Kaos
knows only one type of fractal (IFS), is not configurable, and has very few
options. So, why would you spend any time on this program?
Ñ What makes Kaos special
Most fractal programs offer you the possibility of creating nice pictures.
Great! Personally, I wrote about 100 of such programs, or something like that.
However, with these programs, it is YOU who is doing the work of selecting
options, colours, and pieces to magnify. That takes a lot of time. And it gets
boring to always be fiddling with the same fractal (e.g. Mandelbrot set). Now,
Kaos offers an entirely different approach to generating fractal images. Kaos
does all the work for you! You never know what it'll do next. You only tell Kaos
to start on a new image, and then it tries to create another esthetically
pleasing picture. Again and again, Kaos will amaze you with shapes never dreamt
of before, and subtle, eye-catching colours! It is like watching clouds, only
with immensely more variation and ever changing, intricate, colouring. Kaos
definitely shows an artistic touch, which is interesting, as it is really the
computer doing all the work...
Ñ How to use Kaos
Well, very much like any Mac application. Read the About Box! A few more notes
may help, however.
Kaos requires at least a 68020, an FPU and Color QuickDraw. Something like a Mac
II. Also, you'll want to give Kaos a lot of memory to handle large pictures not
too slowly.
You really want to install 32-Bit QuickDraw if it is not built-in in your ROMs
or System. Otherwise, Kaos won't give you colours! Use of 32-Bit QuickDraw
doesn't imply that you need a 24 bit video card. Good old 8 bit video hardware
already gives very nice displays. Actually, any screen depth will work with
Kaos. But, for best results, use 24 bit video. If you are content with
black-and-white pictures, use of more than 8 bit video won't help much.
To get an idea of what Kaos does, choose 'New╔' and try an image size of 100 by
100. You'll see how a fractal emerges from the dark. Now choose 'Auto-Recreate'
from the Recreation menu. You'll see images grow brighter, disappear, and new
ones emerge. Now, you can do the same with large images, only this will take
longer. You are heartily invited to watch these images come and go, which is
very exciting. However, if you have a hard disk, and preferably some space free
on it, Kaos can automatically save pictures on it for you. All you have to do is
choose the 'Auto-Save&Recreate' item in the Recreation menu, and tell Kaos what
name you want for the coming sequence of images. Kaos will then continue to
create pictures, and save each finished one with the name you specified and a
number appended to it.
Oh, and before I forget, try the 'HyperZoom' item in the 'Window' menu on a
large picture. This zooms a window such that you see some more of its contents
than usual. The default image size fills the screen nicely.
The 'Use Dithering' item in the 'Document' menu lets you choose between dithered
and undithered display of the picture. This item is enabled only with 32-Bit
QuickDraw installed. You'll see the effect of it only if your monitor shows less
colours than are used internally by Kaos. Kaos uses more than 16 million colours
for colour images and 256 shades of grey for black-and-white images. I strongly
recommend that you always keep 'Use Dithering' checked! (Which is default, of
course.) If a picture is saved without dithering, this property is saved with
it, and Kaos does not allow you to change it afterwards. (techie explanation: I
use screen-depth tracking offscreen pixMaps. And, when drawing a picture to a
pixMap, I cannot change the CopyBits copy mode. Of course, I could always first
draw to a 24 bit pixMap and THEN to a pixMap of the desired depth, um, but why
did I use screen-depth tracking offscreen pixMaps anyway? Right. For speed.)
Ñ Inside information
- The fractal algorithm
Well, I don't remember quite clearly how exactly this algorithm works. I'm not
sure I've ever known! I guess I don't know how this algorithm works, much like
the computer doesn't know what its pictures look like... Basically, Kaos creates
Iterated Function Systems fractals. The parameters of the fractal are
initialised more or less at random, but not quite. The colour of a pixel is
determined by the history of the point travelling through the transformations
defining the shape of the fractal. If you don't know what I am mumbling about,
read the book: The Science of Fractal Images, H. O. Peitgen and D. Saupe
(editors), Springer-Verlag. I got my inspiration for Kaos from an article in
this book: Fractal modelling of real world images, by M. F. Barnsley. If you're
shopping for fractal literature in general, I can recommend the book: The
Fractal Geometry of Nature, B. B. Mandelbrot, W. H. Freeman and Company. This
guy Mandelbrot really did more than invent the famous Mandelbrot set!
- The user interface
I wrote Kaos completely in THINK Pascal 3, using the TCL (Think Class Library).
The TCL is not a mature product yet, to my opinion, but it saves a lot of work.
The TCL provides a framework of objects which implement a basic application for
you. With emphasis on 'basic', that is. It leaves a lot of work to be done to
create a reasonable colour application. Still, I very much like THINK Pascal and
the TCL. The stuff is ⌐ Symantec.
The user interface has some nice 'hidden' properties. Kaos is multi-screen
aware, try zooming or HyperZooming. To speed up fiddling with colour (24 bit!)
windows, I use offscreen pixMaps tracking the screen depth to display PICTs. If
not enough memory is available, Kaos takes a step back and uses PICTs directly.
I was really nice of Apple to write 32-Bit QuickDraw, providing all those nice
traps doing the real work, and providing all those colours.
Alas, Kaos doesn't do background processing under MultiFinder (yet). It does
work on multiple windows, however.
Ñ Some final nonsense
You didn't read all the way down to here, did you?! Don't let all this nonsense
frighten you away from Kaos. The program speaks for itself, I'd say. I hope you
like it. If you like it, you can do something for me. Of course, Kaos is
absolutely free, as long as you are not making money with it. But, if you would
take the trouble of letting me know what you think of Kaos, I would really very
much appreciate it! Contact me any way you think fit. I would be thrilled by a
picture of you yourself, your computer, or your cat. If you got a really cool
Kaos picture, send it to me! Well, then, my name and address are:
Reinoud Lamberts
Grabijnhof 27
2625 LM Delft
The Netherlands
You're invited to drop by anytime. If you're coming by plane just to visit me,
you should really try to phone me first, I'm not always here. So, my phone
number is:
015 - 562184
Plus, if necessary, any stuff before it to get onto the Dutch phone net.
Naturally, you're welcome to phone me even if you don't plan to come here. There
is one more way to reach me: by email. You shouldn't rely on email to contact
me, but there is a reasonable chance that I'll be there. Here is my InterNet
address:
reinoud@duteca.tudelft.nl
Well, that's about it. There is a lot more to tell, but I like to do something
else now. If you want to know more or tell me something, contact me. Remarks,
suggestions and bug reports are welcome.